#include "stdafx.h"
#define BOOST_TEST_MODULE test_bmock
#include <boost/test/auto_unit_test.hpp>
#include "bmock_control_tools_mock.hpp"

namespace bmock {
	void control_tools_mock::error(const std::string &msg,const bmock::location &loc,const bool fail,const bool except) const {
		__VOID_CHECK(control_, 4,(
			IN(msg)
			,IN(loc)
			,IN(fail)
			,IN(except)));	
	}

	void control_tools_mock::abort(const bmock::location &loc) const {	
		__VOID_CHECK(control_,1,(
			IN(loc)));	
	}

	bool control_tools_mock::warn(const std::string &msg,const location & loc) const{		
		__NOT_VOID_CHECK(control_, 2, (IN(msg), IN(loc)));
	}

	bool bmock::control_tools_mock::check_equal(const std::string &exp,const std::string &act,const std::string &msg,const bmock::location &loc) const {	
		__NOT_VOID_CHECK(control_,4,(
			IN(exp)
			,IN(act)
			,IN(msg)
			,IN(loc)));	
	}

	void control_tools_mock::require_equal(const size_t exp,const size_t act,const std::string &msg,const bmock::location &loc) const {	
		__VOID_CHECK(control_,4,(
			IN(exp)
			,IN(act)
			,IN(msg)
			,IN(loc)));	
	}

	bool control_tools_mock::check_less_or_equal(const size_t exp,const size_t act,const std::string &msg,const bmock::location &loc) const {
		__NOT_VOID_CHECK(control_,4,(
			IN(exp)
			,IN(act)
			,IN(msg)
			,IN(loc)));	
	}

	bool control_tools_mock::check_ptr(bool null_expected,bool null_supplied,const std::string &msg,const bmock::location &loc) const {	
		__NOT_VOID_CHECK(control_,4,(
			IN(null_expected)
			,IN(null_supplied)
			,IN(msg)
			,IN(loc)));	
	}
	bool control_tools_mock::warn_not_equal(size_t exp,size_t act,const std::string &msg,const bmock::location &loc) const{	
		__NOT_VOID_CHECK(control_,4,(
			IN(exp)
			,IN(act)
			,IN(msg)
			,IN(loc)));	
	}
}
